package ru.bank.paymentprocessing.state;

import ru.bank.paymentprocessing.service.PaymentService;

/**
 * Интерфейс, определяющий метод для обработки платежа в зависимости от его состояния.
 */
public interface State {

    /**
     * Метод для обработки платежа в соответствии с текущим состоянием.
     *
     * @param context объект сервиса обработки платежей, содержащий необходимую информацию о платеже и его состоянии
     */
    void processPayment(PaymentService context);
}
